package com.baosight.risk.api.xtzy;

import java.util.List;

import com.baosight.risk.base.service.BaseService;
import com.baosight.risk.common.result.AjaxResult;
import com.baosight.risk.service.quartz.entity.SyncEmpleeEntitiy;
import com.baosight.risk.service.xtzy.entity.XtzyUser;

/**
 * 类 名: IXtzyUserService
 * 描 述:
 * 作 者: 黎秋荣
 * 创 建：2019年04月25日
 * 版 本：v2.2.0
 * 历 史: (版本) 作者 时间 注释
 */
public interface IXtzyUserService extends BaseService<XtzyUser> {

    XtzyUser selectByName(String userCode);
    
    XtzyUser selectByUserType(String userCode,String userType);

    /**
     * 查询正常用户
     *
     * @param userCode
     * @return
     */
    XtzyUser getUserByStatus(String userCode);

    List<XtzyUser> selectUser(XtzyUser user);

    /**
     * 新增用户
     *
     * @param user 组织机构ID
     * @return
     */
    Integer insertUser(XtzyUser user);

    /**
     * 根据ids禁用用户
     *
     * @param ids 用户IDs
     * @return
     */
    AjaxResult deleteById(List<String> ids, String status) throws Exception;

    /**
     * 根据ids禁用用户
     *
     * @param ids 用户IDs
     * @return
     */
    AjaxResult openById(List<String> ids, String status) throws Exception;

    /**
     * @return
     * @description 从dbprodk5中拉去全部宝山钢铁股份有限公司数据
     */
    List<SyncEmpleeEntitiy> getEmpleeFromOtherDB(SyncEmpleeEntitiy syncEmpleeEntitiy);

    /**
     * 修改用户过期为永久
     *
     */
    Integer updateExpireDate();

    void addUserToIplat(XtzyUser user) throws Exception;

    /**
     * 修改密码
     * @param userCode
     * @param oldPwd
     * @param newPwd
     * @return
     * @throws Exception
     */
    Integer changePwd(String userCode,String oldPwd,String newPwd);
    
    void deleteOA(List<String> ids) throws Exception;
}